
public class DuckSimulator {
	public static void main(String[] args){
		DuckSimulator sim = new DuckSimulator();
		sim.simulate();
	}
	
	void simulate(){
		Quackable mallardDuck = new MallardDuck();
		Quackable redHeadDuck = new RedHeadDuck();
		Quackable duckCall= new DuckCall();
		Quackable rubberDuck = new RubberDuck();
		
		Quackable gooseDuck = new GooseAdaptor(new Goose());
		
		System.out.println("\nDuck Sim #2");
		
		simulate(mallardDuck);
		simulate(redHeadDuck);
		simulate(duckCall);
		simulate(rubberDuck);
		simulate(gooseDuck);
	}
	
	void simulate( Quackable duck){
		duck.Quack();
	}
	

}
